package com.corpgovernment.organization.model;

import lombok.Data;

import java.io.Serializable;
import java.math.BigDecimal;

/**
 * @author jhxue
 */
@Data
public class SupplierCompanyModel implements Serializable {
    /**
     * 开卡方式 X：一人一卡 V：虚拟卡
     */
    private String openCardType;
    /**
     * 公司编号
     */
    private String companyCode;
    /**
     * 供应商code
     */
    private String supplierCode;
    /**
     * 服务类型
     * 'flight','train','hotel','car'
     */
    private String productType;
    /**
     * 1表示开启，0表示停用
     */
    private Boolean isEnable;
    /**
     * 01-》1表示因公，10-》2表示因私 11-》3表示因公因私
     */
    private Integer busPriType;
    /**
     * 供应商企业ID
     */
    private String supplierCorpId;
    /**
     * 供应商用户名
     */
    private String supplierUid;
    /**
     * 供应商主账户id
     */
    private String supplierAccountId;
    /**
     * 子账户代号
     */
    private String subAccountCode;
    /**
     * 服务费获取类型 1从配置读取 2从服务商接口读取
     */
    private Integer serviceFeeOptionType;
    /**
     * 1开启选择保险 2关闭选择保险 3强制购买保险
     */
    private Integer insuranceOptionType;
    /**
     * 统一支付因公改签费
     */
    private BigDecimal accountPubRebookFee;
    /**
     * 统一支付因公退票费
     */
    private BigDecimal accountPubRefundFee;
    /**
     * 统一支付因公服务费
     */
    private BigDecimal accountPubServiceFee;
    /**
     * 统一支付因公代取票服务费
     */
    private BigDecimal accountPubSubstituteTicketFee;
    /**
     * 个人支付因公改签费
     */
    private BigDecimal personalPubRebookFee;
    /**
     * 个人支付因公退票费
     */
    private BigDecimal personalPubRefundFee;
    /**
     * 个人支付因公服务费
     */
    private BigDecimal personalPubServiceFee;
    /**
     * 因私改签费
     */
    private BigDecimal priRebookFee;
    /**
     * 因私退票费
     */
    private BigDecimal priRefundFee;
    /**
     * 因私服务费
     */
    private BigDecimal priServiceFee;
    /**
     * 配送费
     */
    private BigDecimal deliveryFee;
    /**
     * 排序
     */
    private Integer sortNum;
    /**
     * 1被删除，0被删除
     */
    private Boolean isDeleted;

    /**
     * 统一支付-服务费计算方式
     * 1: 订单
     * 2: 间夜
     */
    private Integer accountPubServiceFeeWay;

    /**
     * 统一支付-协议酒店 管控方式
     * 1: 不收
     * 2: 前收
     * 3: 后收
     */
    private Integer accountPubContractSwitch;

    /**
     * 统一支付-协议酒店 服务费
     */
    private BigDecimal accountPubContractServiceFee;

    /**
     * 统一支付-其他酒店 管控方式
     * 1: 不收
     * 2: 前收
     * 3: 后收
     */
    private Integer accountPubOtherSwitch;

    /**
     * 统一支付-其他酒店 服务费
     */
    private BigDecimal accountPubOtherServiceFee;

    /**
     * 个人支付-服务费计算方式
     * 1: 订单
     * 2: 间夜
     */
    private Integer priServiceFeeWay;

    /**
     * 个人支付-协议酒店 管控方式
     * 1: 不收
     * 2: 前收
     * 3: 后收
     */
    private Integer priContractSwitch;

    /**
     * 个人支付-协议酒店 服务费
     */
    private BigDecimal priContractServiceFee;

    /**
     * 个人支付-其他酒店 管控方式
     * 1: 不收
     * 2: 前收
     * 3: 后收
     */
    private Integer priOtherSwitch;

    /**
     * 个人支付-其他酒店 服务费
     */
    private BigDecimal priOtherServiceFee;

//    /**
//     * 个人支付因公-服务费计算方式
//     * 1: 订单
//     * 2: 间夜
//     */
//    private Integer personalPubServiceFeeWay;

    /**
     * 个人支付因公-协议酒店 管控方式
     * 1: 不收
     * 2: 前收
     * 3: 后收
     */
    private Integer personalPubContractSwitch;

    /**
     * 个人支付因公-协议酒店 服务费
     */
    private BigDecimal personalPubContractServiceFee;

    /**
     * 个人支付因公-其他酒店 管控方式
     * 1: 不收
     * 2: 前收
     * 3: 后收
     */
    private Integer personalPubOtherSwitch;

    /**
     * 个人支付因公-其他酒店 服务费
     */
    private BigDecimal personalPubOtherServiceFee;
}